package com.jyw.router.hospital.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jyw.router.hospital.domain.HospitalRegisterUser;
import com.jyw.router.hospital.domain.WxUser;
import com.jyw.router.hospital.domain.vo.RegisterUserVo;

/**
 * 注册用户信息Service接口
 * 
 * @author shenjun
 * @date 2023-04-17
 */
public interface IHospitalRegisterUserService extends IService<HospitalRegisterUser>
{
    /**
     * 查询注册用户信息
     * 
     * @param id 注册用户信息主键
     * @return 注册用户信息
     */
    public HospitalRegisterUser selectHospitalRegisterUserById(Long id);

    /**
     * 查询注册用户信息列表
     * 
     * @param hospitalRegisterUser 注册用户信息
     * @return 注册用户信息集合
     */
    public List<HospitalRegisterUser> selectHospitalRegisterUserList(HospitalRegisterUser hospitalRegisterUser);

    /**
     * 新增注册用户信息
     * 
     * @param hospitalRegisterUser 注册用户信息
     * @return 结果
     */
    public int insertHospitalRegisterUser(HospitalRegisterUser hospitalRegisterUser);

    /**
     * 修改注册用户信息
     * 
     * @param hospitalRegisterUser 注册用户信息
     * @return 结果
     */
    public int updateHospitalRegisterUser(HospitalRegisterUser hospitalRegisterUser);

    /**
     * 批量删除注册用户信息
     * 
     * @param ids 需要删除的注册用户信息主键集合
     * @return 结果
     */
    public int deleteHospitalRegisterUserByIds(Long[] ids);

    /**
     * 删除注册用户信息信息
     * 
     * @param id 注册用户信息主键
     * @return 结果
     */
    public int deleteHospitalRegisterUserById(Long id);

    /**
     * 禁用医院用户注册信息
     * @param id
     */
    void disabled(Long id);

    /**
     * 启用注册用户
     * @param id
     */
    void enable(Long id);

    /**
     * 注册用户信息
     * @param registerUser
     */
    void registerUser(RegisterUserVo registerUser);

    /**
     * 通过手机号获取用户
     * @param phone
     */
    HospitalRegisterUser getUserByPhone(String phone);


}
